world
Source
InputReader
{} =
elementary
signal[_16971e9d]():
Void
;
signal[_6b6a16ae]():
Void
;
signal[_b97cf78]():
Void
;
signal[_3ec1e10c]():
Void
;
signal[_69cad977]():
Void
;
end
AcmeControl
{} =
elementary
slot[_4521cef5]():
Void
end
slot[_179d44df]():
Void
end
slot[_622d8a59]():
Void
end
end
ConsoleOut
{} =
elementary
slot[_65e95f04]():
Void
end
slot[_af917bd]():
Void
end
slot[_6d4fab65]():
Void
end
end
Status
{} =
Enum
end
PlayerControl
{} =
elementary
signal[_45844479]():
Void
;
signal[_3f52c19d]():
Void
;
signal[_e582a85]():
Void
;
signal[_57b33087]():
Void
;
signal[_3512731f]():
Void
;
signal[_575887db]():
Void
;
slot[_15aec462]():
Void
if
(
status
=
Status
.PAUSE)
then
doStart
();
ef
(
status
=
Status
.PLAY)
then
doPause
();
end
end
slot[_31aedcb3]():
Void
doStop
();
end
slot[_2300c858]():
Void
status
:=
Status
.PLAY;
sayPlay
();
end
slot[_211aa79a]():
Void
status
:=
Status
.STOP;
sayStop
();
end
slot[_6b7536e7]():
Void
status
:=
Status
.PAUSE;
sayPause
();
end
status
:
Status
=
Status
.STOP
end
World
{} =
composition
//geometry width="400" height="210"
uiOut
:
ConsoleOut
acmeCntrl
:
AcmeControl
cntrl
:
PlayerControl
inRead
:
InputReader
cntrl
.doPause ->
acmeCntrl
.doPause;
cntrl
.doStart ->
acmeCntrl
.doStart;
cntrl
.doStop ->
acmeCntrl
.doStop;
cntrl
.sayPause ->
uiOut
.sayPause;
//geometry path="260"
cntrl
.sayPlay ->
uiOut
.sayPlay;
//geometry path="280"
cntrl
.sayStop ->
uiOut
.sayStop;
//geometry path="270"
inRead
.playPause ->
cntrl
.playPause;
inRead
.stop ->
cntrl
.stop;
inRead
.paused ->
cntrl
.paused;
inRead
.started ->
cntrl
.started;
inRead
.stopped ->
cntrl
.stopped;
end
Picture
World
uiOut
ConsoleOut
sayPlay
sayStop
sayPause
acmeCntrl
AcmeControl
doStart
doStop
doPause
cntrl
PlayerControl
playPause
stop
started
stopped
paused
doStart
doStop
doPause
sayPlay
sayStop
sayPause
inRead
InputReader
playPause
stop
started
stopped
paused